1. Значения в ячейке таблицы должны быть атомарны, т.е. в ячейке должно содержаться только 1 значение. 2. Таблица должна содержать ключ, от которого зависят (который идентифицирует) все элементы ряда. Для устранения избыточности избыточные данные выносятся в таблицу-справочник. 3. Любой неключевой атрибут таблицы должен зависеть ТОЛЬКО от первичного ключа. Не должно быть, т.н. транзитивной зависимости, когда неключевой атрибут зависит от другого неключевого атрибута, т.е. когда одно поле (помимо зависимости от ключа) зависит от другого поля.